Multi-button mouse

ABSTRACT

A mouse with multi button functionality is disclosed. The mouse includes a housing that surrounds the internal components of the mouse. The housing includes at least a first member and a second member, each of which forms a substantial portion of the housing. The first member moves relative to the second member so as to implement at least one of the multiple button functions of the mouse.

CROSS REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.10/209,537 filed on Jul. 30, 2002 now U.S. Pat. No. 7,233,318 andentitled “MULTI-BUTTON MOUSE,” which claims priority of U.S. ProvisionalPatent Application No. 60/364,400 filed on Mar. 13, 2002 and entitled“MULTI-BUTTON MOUSE,” both of which are hereby incorporated herein byreference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates generally to input devices. Moreparticularly, the present invention relates to mice having multiplebutton functionality.

2. Description of the Related Art

Most computer systems, as for example general purpose computers such asportable computers and desktop computers, receive input from a user viaan input device such as a mouse. As is generally well known, the mouseallows a user to move an input pointer (e.g., cursor) and to makeselections with respect to a graphical user interface (GUI). The mousegenerally includes a trackball, which is located on the underside of themouse and which rolls when the mouse moves thus translating the motionof the users hand into signals that the computer system can use. Themovement of the trackball generally corresponds to the movement of theinput pointer. That is, by positioning the mouse on a desktop and movingit thereon, the user can move the input pointer in similar directionswith respect to the GUI. An optical sensor may alternatively be used totrack the movement of the mouse. The mouse also conventionally includesone or more buttons, which are located on the top side of the mousehousing. These one or more buttons, when selected, can initiate a GUIaction such as menu or object selections. The one or more buttons aretypically provided by one or more button caps that move relative to themouse housing.

Although mice designs such as these work well, there are continuingefforts to improve their form, feel and functionality.

SUMMARY OF THE INVENTION

This invention relates in one embodiment to a method of sending signalscorresponding to multiple button functionalities from a unibody mouse toan electronic system. The unibody mouse has a single movable housingcomponent that cooperates with and is movably coupled with a basehousing component that supports the unibody mouse on a surface. Themethod is performed by at least the following: associating the multiplebutton functionalities with specific portions of the single movablehousing component, activating each of the multiple buttonfunctionalities by moving the single movable housing component todifferent positions relative to the base housing component wherein thesingle movable housing component has at least two degrees of freedomrelative to the base housing component, generating a clicking action bymoving the movable housing component relative to the base housingcomponent along at least one of the at least two degrees of freedom, andsending a signal to the electronic system based upon the clickingaction.

This invention relates in one embodiment to a method of configuring amulti-function mouse having a single movable housing component beingmovably coupled to an associated base housing component that supportsthe multi-function mouse on a surface. The method includes at least thefollowing operations: assigning a number of distinct button zones to thesingle movable housing component, interpreting a signal received fromeach assigned button zone as a corresponding button function, andperforming the button function corresponding to the signal received fromthe mouse.

This invention relates in one embodiment to computer program productexecutable by a processor for configuring a multi-function mouse havinga single movable housing component being movably coupled to anassociated base housing component that supports the multi-function mouseon a surface. The computer program product includes computer code forassigning a number of distinct button zones to the single movablehousing component, computer code for interpreting a signal received fromeach assigned button zone as a corresponding button function, computercode for performing the button function corresponding to the signalreceived from the mouse, and computer readable medium for storing thecomputer code.

In yet another embodiment of the invention, software encoded in one ormore computer readable media in an electronic system is disclosed. Whenexecuted the software operates to assign a number of distinct buttonzones to a single movable housing component of a user input devicecommunicatively coupled with the electronic system, the single movablehousing component being movably coupled to an associated base housingcomponent that supports the user input device on a surface, the singlemovable housing component being capable of movement along at least twodegrees of freedom relative to the base housing component, associate abutton function with each assigned button zone, interpret a signalreceived from the user input device, the signal being produced in theuser input device and transmitted to the electronic system as a resultof actuating a button zone, the button zone being actuated as a resultof moving the single movable housing component relative to the basehousing component to actuate an associated movement indicator configuredto sense a movement of the associated button zone, wherein interpretingthe signal involves at least determining which button zone was actuated,and implement a specific button function corresponding to the associatedactuated button zone, the button function corresponding to an action ona display.

Another embodiment of the invention describes a method of configuring amulti-function mouse having a single movable housing component beingmovably coupled to an associated base housing component that supportsthe multi-function mouse on a surface, the method is carried out byperforming at least the following operations: assigning a number ofdistinct button zones to the single movable housing component,interpreting a signal received from each assigned button zone as acorresponding button function, and performing the button functioncorresponding to the signal received from the mouse.

A system is described that includes a unibody user input device havingmultiple assigned button zones in a single movable housing component ofthe user input device, wherein each button zone has an associated buttonfunctionality and all of said multiple button functionalities areincorporated into the single movable housing component, the singlemovable housing component being movably coupled to a base housingcomponent that supports the mouse along a surface, wherein the movablehousing component is capable of movement along at least two degrees offreedom relative to the base housing component, wherein actuation of asingle button zone is achieved by moving the movable housing componentrelative to the base housing component to actuate an associated movementindicator configured to sense a movement of the associated button zone,a display, and a processor communicatively coupled with the mouse, theprocessor configured to interpret a signal received from the user inputdevice, the signal being produced in the user input device as a resultof the actuation of a button zone, wherein the interpretation of thesignal involves at least the determination of which button zone wasactuated, the processor being further configured to implement a specificbutton function corresponding to the associated actuated button zone,the button function corresponding to an action on the display.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention will be readily understood by the following detaileddescription in conjunction with the accompanying drawings, wherein likereference numerals designate like structural elements, and in which:

FIG. 1 is a perspective diagram of an input device, in accordance withone embodiment of the present invention.

FIG. 2 is a simplified side view of a unibody mouse, in accordance withone embodiment of the present invention.

FIG. 3 is a simplified side view of a unibody mouse, in accordance withone embodiment of the present invention.

FIGS. 4A-4B are simplified rear views of a unibody mouse, in accordancewith one embodiment of the present invention.

FIG. 5 is a perspective view of a unibody mouse, in accordance with oneembodiment of the present invention.

FIGS. 6A-6F are top views of a unibody mouse, in accordance with severalembodiments of the present invention.

FIG. 7 is a simplified top view of a unibody mouse, in accordance withone embodiment of the present invention.

FIG. 8 is a top view, in cross section, of a unibody mouse, inaccordance with one embodiment of the present invention.

FIGS. 9A-9F are side elevation views, in cross section, of a unibodymouse, in accordance with several embodiments of the present invention.

FIGS. 10A-10C are side elevation views, in cross section, of a unibodymouse, in accordance with several embodiments of the present invention.

FIGS. 11A-11B are side elevation views, in cross section, of a unibodymouse, in accordance with one embodiment of the present invention.

FIG. 12 is a side elevation view, in cross section, of a unibody mouse,in accordance with an alternate embodiment of the invention.

FIGS. 13A-13C are side elevation views, in cross section, of a unibodymouse, in accordance with one embodiment of the present invention.

FIG. 14 is a perspective view of a unibody mouse, in accordance with oneembodiment of the present invention.

FIG. 15 is a flow diagram of mouse processing, in accordance with oneembodiment of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

Embodiments of the invention are discussed below with reference to FIGS.1-15. However, those skilled in the art will readily appreciate that thedetailed description given herein with respect to these figures is forexplanatory purposes as the invention extends beyond these limitedembodiments.

FIG. 1 is a perspective diagram of a user operated input device 20, inaccordance with one embodiment of the invention. The user operated inputdevice 20 is configured to allow a user to move an input pointer (e.g.,cursor) and to perform an action on a display screen. By way of example,the input pointer may be displayed via a Graphical User Interface (GUI)on a display screen. Although not shown in FIG. 1, the display screen istypically part of an electronic system such as a computer system. Forexample, the computer-based electronic system may correspond to ageneral purpose computer, such as a desktop computer or a portablecomputer. The user input device is typically connected to the electronicdevice via a data transmission cord 21, although other types ofconnections may be used, as for example, wireless connections.

The input device 20 generally includes a device housing 22 that providesa structure for moving the device 20 along a surface and for grippingthe device 20 for movement thereof. The device housing 22 also helps todefine the shape or form of the device 20. That is, the contour of thedevice housing 22 embodies the outward physical appearance of the device20. The device housing 22 also provides a structure for enclosing,containing and/or supporting the internal components of the device 20.Although not shown, the internal components may correspond to electricaland/or mechanical components for operating the device 20. For example,the internal components may include a track ball or optical assembly formonitoring the movement of the input device 20 along a surface and forsending signals corresponding to the movements to the electronic system.In most cases, the signals produced by these components direct the inputpointer to move on the display screen in a direction similar to thedirection of the device as it is moved across a surface. For example,when the input device is moved forward or backwards, the input pointeris moved vertically up or down, respectively, on the display screen. Inaddition, when the input device is moved from side to side, the inputpointer is moved from side to side on the display screen.

In one embodiment, the user operated input device includes one or morebutton zones 24. The button zones 24 represent regions of the device 20that may be actuated by a user to implement one or more button functionsassociated with performing actions on a display screen. By way ofexample, the button functions may include selecting an item on thescreen, opening a file or document, executing instructions, starting aprogram, viewing a menu, and/or the like. The button functions may alsoinclude functions that make it easier to navigate through the electronicsystem, as for example, zoom, scroll, open different menus, home theinput pointer, perform keyboard related actions such as enter, delete,insert, page up/down, and the like.

The manner in which the button zones 24 may be implemented can be widelyvaried. For example, the button zones 24 may be provided by a mechanicalbutton (or buttons) that each provide a clicking action for implementingan on-screen action. In most cases, the mechanical button includes abutton cap or scroll wheel that works independent of or moves relativeto the input device housing 22. For example, the button cap may pivotrelative to the housing. The button zones may also be provided by aunified button/housing that incorporates the functionality of a button(or buttons) directly into the input device housing 22, i.e., the buttonfunctionality and a substantial portion of the housing are combined (asopposed to attaching separate button caps to or through the devicehousing). In a unified button housing, the button zones may be providedby different portions of the device housing that each provide a clickingaction for implementing an on-screen action. In essence, the devicehousing serves as a button (or buttons) of the input device 20. Thebutton zones may also be provided by a combination of the above (e.g.,button caps and unified button housing).

In any of the examples above, the clicking actions are generallyarranged to actuate one or more movement indicators (not shown)contained inside the device housing 22. The movement indicators areconfigured to sense movements of the button zones during the clickingaction and to send signals corresponding to the movements to theelectronic system. By way of example, the movement indicators may beswitches, sensors and/or the like.

The clicking action(s) may, for example, be used to implement a singleclick, a double click and/or a dragging and dropping function. As isgenerally well known, a single click often selects an item on thescreen, a double click often opens a document or launches a program, anddragging and dropping generally makes it easy to move an item on thescreen. In order to perform a single click using the device 20, the userpresses and releases at least one of the button zones 24. In order toperform a double click using the device 20, the user quickly presses andreleases at least one of the button zones 24 twice. In order to performa drag and drop function, the user first positions the pointer or cursorover an item on the screen (by moving the mouse along the flat surface)and presses and holds down at least one of the button zones 24 so as toselect the item. Thereafter, the user, while still holding down the atleast one of the button zones 24, moves the pointer to a desiredposition on the screen (by moving the mouse along the flat surface) andsubsequently releases the at least one of the button zones 24.

In order to implement multiple button functionalities, the input device20 is generally divided into several independent and spatially distinctbutton zones, as for example, button zones 24A and 24B. Each of thesebutton zones may correspond to a distinct button function. For example,the first button zone 24A may correspond to selecting an item on thedisplay screen (e.g., standard left click) and the second button zone24B may correspond to showing a menu on the display screen (e.g.,standard right click).

In one embodiment, the input device 20 integrates at least one of thebutton zones 24A or 24B directly into a portion of the device housing22. That is, the device housing 22 acts like a button such that at leastone of the multiple button functionalities may be implemented bypressing on the device housing 22 rather than on a separate mechanicalbutton. The other button zone 24A or 24B may correspond to anotherportion of the device housing 22 as above, or to a mechanical buttonsuch as button caps, scroll wheels and the like. In the illustratedembodiment, the button zones 24 correspond to different portions of thedevice housing 22 and thus the device housing itself is used toimplement all of the multiple button functions of the input device.Although only two button zones are shown in FIG. 1, the input device mayinclude one or more button zones.

FIG. 2 is a side view of a unibody mouse 50, in accordance with oneembodiment of the invention. By way of example, the unibody mouse 50 maycorrespond to the user operated input device 20 shown in FIG. 1. Theunibody mouse 50 generally includes a mouse housing 51 that provides astructure for moving the mouse along a surface, for gripping the mousefor movement thereof and for implementing at least one button functionof the mouse 50. The term “unibody” herein refers to a mouse thatintegrates at least one button function directly into the mouse housing51, i.e., pressing on the mouse housing 51 creates a clicking action. Assuch, any part of the hand, from finger to thumb to palm, can trigger aclicking action.

The mouse housing 51 may be widely varied. In the illustratedembodiment, the mouse housing 51 includes a movable base 52 and a buttonbody 54. The movable base 52 is configured to moveably support the mouse50 during use thereof, i.e., the base 52 makes moving contact with asurface such as a desktop or mouse pad. In most cases, the movable base52 supports a position detecting mechanism so as to track the positionof the mouse 50 as it is moved along the surface. By way of example theposition detecting mechanism may be a trackball mechanism or an opticalsensor. The position detecting mechanism is generally configured toprovide information to a computer so that the movement of the pointer onthe screen corresponds to the movement of the mouse on the surface.

The button body 54, on the other hand, is configured to move relative tothe base 52 so as to provide a clicking action that implements thebutton functionality of the mouse 50. The entire surface of the body 54above the base 52 acts as a single or multiple button. The clickingaction (e.g., the movement of the body 54 relative to the base 52) maybe provided through one or more degrees of freedom (DOF). The degrees offreedom may be implemented through one or more rotations, pivots,translations, flexes (and/or the like) relative to the base 52. By wayof example, the button body 54 may be coupled to the base 52 via one ormore pin joints, slider joints, ball and socket joints, flexure jointsand the like.

In one embodiment, a single DOF is used to implement a single clickingaction. For example, as shown in FIG. 3, a single clicking action may beimplemented by a body 62 that pivots relative to a base 64. By way ofexample, the body 62 and base 64 may generally correspond to the bodyand base shown in FIG. 2. The body 62 typically pivots about an axis 66.In this example, the body 62 is capable of moving between a firstposition (shown by a solid line) and a second position (shown by adotted line) when a force F is applied to the body 62. The force F maybe any downward force on the mouse 60, whether from a finger, palm orhand that results in a clicking action. In one implementation, thebutton body 62 may be spring biased so as to place the button body 62 inan unactuated position such as for example the first position shown bythe solid lines. The spring bias may be provided by a separate spring ora movement indicator that includes a spring action.

In another embodiment, a single DOF is used to implement multipleclicking actions. For example, as shown in FIGS. 4A and 4B, a multipleclicking action may be implemented by a body 72 that pivots relative toa base 74. By way of example, the body 72 and base 74 may generallycorrespond to the body and base shown in FIG. 2. The body 72 typicallypivots about an axis 76. As shown in FIG. 4A, the body 72 is capable ofmoving between a first position (shown by a solid line) and a secondposition (shown by dotted lines) when a force F₁ is applied to a leftside 78 of the body 72, and as shown in FIG. 4B, the body 72 is capableof moving between a first position (shown by a solid line) and a thirdposition (shown by dotted lines) when a force F₂ is applied to a rightside 80 of the body 72. The forces F₁ and F₂ may be any downward forceon the mouse 70, whether from a finger, palm or hand that results in aclicking action. In one implementation, the button body 72 may be springbiased so as to place the button body 72 in an unactuated position suchas for example the first position shown by the solid lines. The springbias may be provided by a separate spring or a movement indicator thatincludes a spring action.

In yet another embodiment, multiple DOF's are used to implement multipleclicking actions. For example, a multiple clicking action may beimplemented by a combination of pivots, as for example the pivots shownin FIGS. 3 and 4. Referring to FIG. 5, a unibody mouse 90 that includesa body 92 that pivots in two directions relative to a base 94 is shown.By way of example, the body 92 and base 94 may generally correspond tothe body and base shown in FIG. 4. The pivots may be implemented using avariety of joints including pivot joints, flexure joints and the like.As shown by the arrows, the body 92 can pivot about a first axis 96 anda second axis 98. The positions of the two axis 96, 98 may be widelyvaried so as to allow a plurality of body positions relative to thebase. In the illustrated embodiment, the two axes 96, 98 are orthogonal(or perpendicular) to one another. This arrangement allows the body tomove between a plurality of positions when a force is applied todifferent portions of the body 92. For example, the body 72 may becapable of moving between an initial position (no pivot) and a left tiltposition (pivot about both axis) when a force is applied to a left frontportion A of the body 72, between an initial position and a right tiltposition (pivot about both axis) when a force is applied to a rightfront portion B of the body 72, and between an initial position and amiddle tilt position (pivot about a single axis) when a force is appliedto a middle front portion C of the body 72. The force may be anydownward force on the mouse 90, whether from a finger, palm or hand thatresults in a clicking action. In one implementation, the button body 92may be spring biased so as to place the button body 92 in an unactuatedposition such as for example the first position shown by the solidlines. The spring bias may be provided by a separate spring or amovement indicator that includes a spring action.

It should be noted that pivots are not a limitation and that other typesof DOF, as well as other types of joints may be used. For example, themouse may include a pivot/translating joint, pivot/flexure joint,pivot/ball and socket joint, translating/flexure joint, a flexure joint,a ball and socket joint, and the like so as to provide two or moredegrees of freedom.

Multiple clicking actions may be arranged in a variety of ways toproduce one or more button zones corresponding to one or more buttonfunctions. Button zones, as used in conjunction with a unibody design,refers to a region of the housing that represents a particular buttonfunction. The multiple clicking actions may or may not representmultiple button zones. That is, although the body moves to more than oneposition, the mouse may be configured to have only one button zone or itmay be configured to have two or more button zones.

In one embodiment, the number of clicking actions corresponds to thenumber of button zones. That is, each independent movement of the bodyrelative to the base implements a distinct button function. In aspecific example, the mouse shown in FIGS. 4A and 4B, which can tilt tothe left or the right may be used to implement different buttonfunctions such as a conventional right click and left click.

In another embodiment, the number of clicking actions corresponds to adifferent number of button zones. For example, a single button zone maybe arranged to encompass two or more clicking actions so that each ofthe clicking actions implements the same button function. In a specificexample, the mouse shown in FIG. 5, which can tilt to the left, rightand forward may be used to implement only two button functions such as aconventional right click and left click. In cases such as this, theforward tilt may be combined with the right tilt to produce a buttonzone associated with a right click or with the left tilt to produce abutton zone associated with a left click.

The distribution of the button zones may be widely varied. For example,the button zones may be positioned almost anywhere on the mouse (e.g.,front, back, sides or the like). Further, the button zones may be formedfrom almost any shape whether simple (e.g., squares, circles, ovals,triangles, rectangles, polygons, and the like) or complex (e.g., randomshapes). The shape of multiple button zones may have identical shapes orthey may have different shapes. In addition, the size of the buttonzones may vary according to the specific needs of each device. In mostcases, the size of the button zones corresponds to a size that allowsthem to be easily manipulated by a user (e.g., the size of a finger tipor larger). Moreover, any number of button zones may be used. In mostcases, the number of button zones correspond to the number of buttonfunctionalities offered by the mouse 50.

Still referring to FIG. 2, the movable base 52 and button body 54provide a mouse housing for containing the electronics that generatecontrol signals associated with moving the input pointer and performingactions on a display screen. By way of example, the electronics may beprinted circuit boards (PCB), processors, encoders, movement indicators,wires, and the like. The base 52 and body 54 may also define the shapeor form of the mouse 50. That is, the contour of the base 52 and body 54may embody the outward physical appearance of the mouse 50. The contourmay be rectilinear, curvilinear or both. In the illustrated embodiment,a bottom side 55 of the base 52 has an external contour (e.g.,rectilinear) that substantially conforms to the contour of a flatsurface such as a desktop and a top side of the mouse housing has anexternal contour that substantially conforms to the contour of theinside surface of a hand (e.g., curved). For example, as shown in FIG.2, a back portion 58 of the body 54 has an external contour (e.g.,curved) that is configured to substantially conform to the contour ofthe palm-side surface of a hand, and a front portion 59 of the body 54has an external contour (e.g., curved) that is configured tosubstantially conform to the contour of the fingers of the hand when thepalm side surface of the hand is placed on the back portion 58 of thebody 54. As shown, the button body represents a substantial portion ofthe entire mouse housing.

In one embodiment, the button functions of the button zones areimplemented via movement indicators located inside the mouse housing andunderneath the button zones. The movement indicators may be anycombination of switches and sensors. Switches are generally configuredto provide pulsed or binary data such as activate (on) or deactivate(off). By way of example, an underside portion of the body may beconfigured to contact or engage (and thus activate) a switch when theuser presses on the button zone. The sensors, on the other hand, aregenerally configured to provide continuous or analog data. By way ofexample, the sensor may be configured to measure the position or theamount of tilt of the body relative to the base when a user presses onthe button zone.

The arrangement of movement indicators may be widely varied. In oneembodiment, the mouse 50 may include a movement indicator for eachbutton zone. That is, there may be a movement indicator corresponding toevery button zone. For example, if there are two button zones, thenthere will be two movement indicators.

In another embodiment, the movement indicators may be arranged in amanner that simulates the existence of a movement indicator for eachbutton zone. For example, two movement indicators may be used to formthree button zones. In another embodiment, the movement indicators maybe configured to form larger or smaller button zones. By way of example,this may be accomplished by careful positioning of the movementindicators or by using more than one movement indicator for each buttonzone. It should be noted that the above embodiments are not a limitationand that the arrangement of movement indicators may vary according tothe specific needs of each device.

FIGS. 6A-6F are top views of a unibody mouse 30 having a pluralitybutton zones 32 integrated into a housing 34 of the unibody mouse 30, inaccordance with several embodiments of the invention. As shown, thedotted lines represent areas of the housing 34 that make up anindividual button zone, i.e., an area of the housing that operates as aseparate button. By way of example, the unibody mice 30 shown in FIGS.6A-6F may generally correspond to the user operated input device 20shown in FIG. 1 or the mouse 50 shown in FIG. 2. Each of the Figures isarranged to show various distributions of the button zones.

In FIG. 6A, the unibody mouse 30 includes a pair of button zones 32 thatare positioned in the front 36 of the unibody mouse 30. In this example,one of the button zones 32A is positioned on the left side 38 of theunibody mouse 30 and one of the button zones 32B is positioned on theright side 40 of the unibody mouse 30. Furthermore, the button zones 32are symmetrical, i.e., they are mirror images of each other andtherefore they have the same size and shape.

In FIG. 6B, the unibody mouse 30 includes a pair of button zones 32A and32B that are positioned to the sides 38, 40 of the unibody mouse 30. Inthis example, the button zones 32 extend from the front 36 of the mouse30 to the back 42 of the mouse 30. Similar to FIG. 2A, the button zones32 are symmetrical, i.e., they are mirror images of each other andtherefore they have the same size and shape.

In FIG. 6C, the unibody mouse 30 includes a pair of button zones 32A and32B that are not symmetrical, i.e., they have different sizes andshapes. In this example, one of the button zones 32 extends over animaginary centerline 44 that divides the mouse 30 in half.

In FIG. 6D, the unibody mouse 30 includes a pair of button zones 32A and32B that are positioned in the front 36 and back 42 of the unibody mouse30. In this example, each of the button zones 32 extends from one side38 to the opposite side 40 of the mouse 30. Furthermore, each of thebutton zones 32 are symmetrical, i.e., they are mirror images of eachother and therefore they have the same size and shape.

In FIG. 6E, the unibody mouse 30 includes three button zones 32A-32Cthat are positioned in the front 36 of the unibody mouse 30. In thisexample, one of the button zones 32A is positioned on the left side 38of the mouse, one of the button zones 32C is positioned in the center 44of the mouse 30, and one of the button zones 32B is positioned on theright side 40 of the mouse 30. Furthermore, the button zones 32 are notsymmetrical, i.e., they are not mirror images of each other andtherefore they have different sizes and shapes.

In FIG. 6F, the unibody mouse 30 includes four button zones 32A-32D thatare positioned in the four corners of the unibody mouse 30. In thisexample, the button zones 32 are symmetrical, i.e., they are mirrorimages of each other and therefore they have the same size and shape.

It should be noted that the button zone distributions shown in FIGS.6A-6F are not a limitation and that the distribution may vary accordingto the specific needs of each device. That is, there are alterations,permutations, and equivalents, which fall within the scope of theexamples given above.

FIG. 7 is a simplified top view of a unibody mouse 81, in accordancewith one embodiment of the present invention. By way of example, theunibody mouse 81 may generally correspond to the unibody mouse shown inFIG. 2, 5 or 6E. The mouse 81 includes three movement indicators—a firstswitch 83 housed beneath a forward left portion A of a button body 82, asecond switch 84 housed beneath a forward left portion B of the body 82and a third switch 85 housed beneath a forward middle portion C of thebody 82. A left tilt clicking action tends to activate the first switch83, a right clicking action tends to activate the second switch 84 and amiddle tilt clicking action tends to activate the third switch 85. Thesignals sent by the activated switches 83-85 may be controlled, as forexample via software, so as to produce one or more button functions. Forexample, the mouse 81 may be configured to act as a single button mousewhen any of the portions A-C are pressed (A-C is equal to a singlebutton zone). The mouse 81 may also be configured to act as a dualbutton mouse when portions A and B are individually pressed (FIG. 6A),when portions AC and B are individually pressed (FIG. 6C) or whenportions A and BC are individually pressed. The mouse 81 may also beconfigured to act as a triple button mouse when respective portions A, Bor C are individually pressed (FIG. 6E), or the like.

FIG. 8 is a top elevation view, in cross section, of a mouse 100, inaccordance with one embodiment of the present invention. By way ofexample, the mouse 100 may generally correspond to the mouse 50 shown inFIG. 7. The mouse 100 includes a base 102 and a body 104 that cooperateto enclose a plurality of internal components 106. The internalcomponents may be electrical and/or mechanical components. In theillustrated embodiment, the electrical components include a printedcircuit board 108, a plurality of movement indicators 110 and amicrocontroller 112. The printed circuit board 108 is attached to thebase 102, and the movement indicators 110 and microcontroller 112 areattached to the printed circuit board 108. The movement indicators 110,which may be mechanical, optical or magnetic, provide signals to themicrocontroller and the microcontroller provides an output (signal 111)for use by an electronic device. By way of example, the output may besent via a wired or wireless connection.

The base 102 provides a platform for sliding the mouse 100 along asurface and for supporting different components of the mouse 100, as forexample, the internal components 106 and the body 104. In order toprovide a clicking action, the body 104 is configured to move relativeto the base 102. The clicking action (e.g., the movement of the body 104relative to the base 102) may be provided through one or more degrees offreedom (DOF). The degrees of freedom may be implemented through one ormore rotations, pivots, translations, flexes (and/or the like) relativeto the base 102. By way of example, the button body 104 may be coupledto the base 102 via one or more pin joints, slider joints, ball andsocket joints, flexure joints and the like. In the illustratedembodiment, the body has at least two degrees of freedom relative to thebase so as to allow the body to move in multiple directions. Thecomponents used to implement the at least two degrees of freedom DOF maybe widely varied.

To elaborate, the body 104 is coupled to the base 102 via a two axisjoint 113. The two axis joint 113 is configured to allow the body 104 tomove about a longitudinal axis 118 and a latitudinal axis 120. Theposition of the two axes 118, 120 may be widely varied. For example, thelatitudinal axis 120 may be positioned towards the back of the mouse 100(as shown), in the middle of the mouse 100, or towards the front of themouse 100. In addition, the longitudinal axis 118 may be positioned inthe center of the mouse 100 (as shown), towards the left side of themouse 100 or towards the right side of the mouse 100. The position ofthe two axis 118, 120 generally determines the type of clicking actions.In the illustrated embodiment, the axis arrangement produces at leastthree clicking actions—a right click, a middle click and a left click.With regards to the right click, if the user presses on the right frontportion of the body 104, the body 104 tilts forward and to the right.With regards to the left click, if the user presses on the left frontportion of the body 104, the body 104 tilts forward and to the left.With regards to the middle click, if the user presses on the middlefront portion of the body 104, the body 104 tilts forward.

In one embodiment, the two axis joint 113 is a pivot/flexure joint thatincludes a pivot and a bendable flexure (e.g., spring). The pivotgenerally includes a pivot pin that is rotatable within a pivot support.In one example, the pivot pin is coupled to the body 104 and the pivotsupport 116 is coupled to the base 102 through the bendable flexure. Inthis example, the pivot allows the body 104 to rotate about thelatitudinal axis 120, and the bendable flexure allows the body 104 topivot about the longitudinal axis 118 (thereby giving the mouse twodegrees of freedom).

The moving body 104 provides a platform for actuating the movementindicators 110 disposed underneath the body 104. That is, if a userimplements a click, the body tilts forward and to the right, middle orleft thereby actuating one or more of the movement indicators 110. Whenactivated, the movement indicators send signals to the controller 112.The controller may process the signals directly or it may pass thesignals onto a host device for processing. The processing step isgenerally configured to produce a control signal corresponding to aright button click when the user presses on the right front portion ofthe mouse body 104, a left button click when the user presses on theleft front portion of the mouse body 104 and a middle button click whenthe user presses on the middle front portion of the mouse body 104.

FIGS. 9A-9F are side views, in cross section, of the mouse 100 (takenalong sectional line 9-9′ in FIG. 8), in accordance with severalembodiments of the invention. Each of the Figures is arranged to showvarious arrangements for implementing the at least two degrees offreedom DOF. In FIG. 9A, the body 104 is coupled to the base 102 via apivot/flexure joint 120. The pivot/flexure joint 120 includes a pair ofpivot pins 122, which extend from the inner periphery 124 of the body104 and which engage a pivot support 126. The pivot/flexure joint 120also includes a flexure 128 that couples the pivot support 126 to thebase 102. As should be appreciated, the pivot joint allows the body 104to pivot forward towards the front of the mouse 100, and the flexurejoint allows the body 104 to move to either side of the mouse 100. Thiscombination yields a body 104 that can tilt straight forward, rightforward and left forward (or backwards if desired). In oneimplementation, the flexure is a bendable material such as plastic ormetal. In the illustrated embodiment, the flexure is a spring. Anysuitable spring may be used.

In FIG. 9B, the body 104 is coupled to the base 102 via a double pivotjoint 130. The double pivot joint 130 includes an axle 132 which extendsacross the body 104, and which engages a pair of pivot supports 134attached to the body 104 (one on each side of the body). The doublepivot joint 130 also includes a pivot pin 136, which is coupled to theaxle 132, which extends in a direction orthogonal to the axle 132 andwhich engages a pivot support 138 attached to the base 102. Thiscombination yields a body that can tilt straight forward, right forwardand left forward (or backwards if desired). The pivot joints (e.g.,pivot pins and pivot supports) may alternatively be provided by ball andsocket joints.

In FIG. 9C, the body 104 is coupled to the base 102 via a double pivotjoint 140. The double pivot joint 140 includes first and second pivotpins 142, and 144 that engage first and second pivot supports 146, 148,respectively. The second pivot pin is attached to an extension 145 ofthe body 104. The first pivot support 146 is mounted to the base 102,and the second pivot support 148 is mounted to the first pivot pin 142.This combination yields a body that can tilt straight forward, rightforward and left forward (or backwards if desired). The pivot joints(e.g., pivot pins and pivot supports) may alternatively be provided byball and socket joints.

In FIG. 9D, the body 104 is coupled to the base 102 via a pivot sliderjoint 150. The pivot slider joint 150 includes a pivot pin 152 which isattached to an extension 154 of the body 104 and which engages a pivotsupport 156. The pivot slider joint 150 also includes a slider 157,which is attached to the pivot support 156 and which engages a slidesupport 158 that is mounted on the base 102. This combination yields abody that can tilt right and left and translate upwards and downwards.

In FIG. 9E, the body 104 is coupled to the base 102 via a ball andsocket joint 160. The ball and socket joint 160 includes a ball 162 thatis attached the body 104, and a socket 164 that is attached to the base102. The ball 162 is configured to engage the socket 164 so as to allowthe body 104 to swivel relative to the base 102. This combination yieldsa body 104 that can tilt to almost any point, as for example, forwardstraight, forward left, forward right, backwards straight, backwardsright, backwards left, left, right or any point therebetween.

In FIG. 9F, the body 104 is coupled to the base 102 via a flexure 170.The flexure 170, which is bendable, is attached to the body 104 and tothe base 102. The bendable nature of the flexure 170 allows the body 104to tilt to almost any point, as for example, forward straight, forwardleft, forward right, backwards straight, backwards right, backwardsleft, left, right or any point therebetween. In one implementation, theflexure is a spring.

It should be noted that the joints shown in FIGS. 9A-9F are not alimitation and that the joints may vary according to the specific needsof each device. That is, there are alterations, permutations, andequivalents, which fall within the scope of the examples given above.

FIGS. 10A-10C are side views, in cross section, of the mouse 100 (takenalong sectional line 10-10′ in FIG. 8), in accordance with severalembodiments of the invention. Each of the Figures is arranged to showvarious arrangements of the movement indicators. In these Figures, themouse includes three movement indicators 200 which are mounted on theprinted circuit board 108, and three posts 180 which extend from thebottom surface of the body 104. The posts 180 are arranged to engage acorresponding movement indicator 200 when the body 104 is moved from theunclicked position to the clicked position. The movement indicators 200may be widely varied. For example, any combination of mechanical,optical (e.g., photo-interrupters) or magnetic (e.g., hall effect)switches may be used.

In FIG. 10A, the mouse 100 includes three mechanical switches 200A-C.The mechanical switches generally include an actuator element 202configured to receive the corresponding post 180 when the body 104 ismoved to the clicked position (e.g., when a downward force is applied tothe body 102). In the clicked position, the post 180 is configured topush against the actuator element 202 so as to activate the switch. Forexample, when a user presses on the left side of the body 104, the leftpost 180A pushes against the actuator element 202 of the left switch200A thereby activating the left switch 200A. The actuator elementtypically moves between a deactivated position (e.g., upright) and anactivated position (e.g., depressed). In most cases, the actuatorelement is spring biased in the deactivated position. The mechanicalswitches may be widely varied. For example, because the left and middleswitches may be activated at the same when the user presses on the leftside of the body, the mechanical switches may be configured to haveactuator elements that activate with or without a clickingcharacteristics (e.g., feel or noise). As should be appreciated, a dualclicking feel when only a single clicking feel is suppose to be felt isgenerally undesirable to the user. In one implementation, therefore, themiddle switch provides clicking characteristics while the left and rightswitches provide no clicking characteristics.

In FIG. 10B, the mouse 100 includes three optical switches 200A-C.Optical switches are similar to mechanical switches in that they have anactivate and deactivate condition. Optical switches generally include alight source 190 and a light detector 192 for sensing light from thelight source 190. Activation may occur when the detector 192 senseslight or when it doesn't sense light. In the illustrated embodiment,activation occurs when the detector 192 does not sense light. The posts180 are configured to block the light from the light source 190 when thebody 104 is moved to the clicked position (e.g., when a downward forceis applied to the body 102). In the clicked position, the post 180 isconfigured to be inserted between the light source 190 and the lightdetector 192 thereby blocking the light from reaching the detectors 192.For example, when a user presses on the left side of the body 104, theleft post 180A moves between the light source 190A and the lightdetector 192A of the left optical switch 200A thereby activating theswitch. Depending on the geometry of the mouse, the middle post may alsoengage the its optical switch when the user presses on the left side ofthe body. The manner in which these signals are differentiated may beimplemented via software (e.g., when the left and middle are actuated, aleft click signal may be implemented in the electronic system).

In FIG. 10C, the mouse includes an arrangement of mechanical and opticalswitches. In the illustrated embodiment, the mouse 100 includes onemechanical switch 200C and two optical switches 200A and B. Themechanical switch is positioned in the middle, and the optical switchesare positioned to the sides.

It should be noted that using three switches is not a limitation andthat the number of switches may vary according to the specific needs ofeach device. For example, two or more switches may be used. The numberof switches generally depends on the number of button functionalitiesavailable by the mouse.

FIGS. 11A-11B are side views, in cross section, of the mouse 100 (takenalong sectional line 10-10′ in FIG. 8), in accordance with an alternateembodiment of the present invention. In this embodiment, the mouse 100includes a post 210, a first switch 212, a second switch 214, and aflexure 216. The post 210, which extends from the body 104, isconfigured to engage the flexure 216 when the body 104 is moved from afirst position (as shown in FIG. 11A) to a second position (as shown inFIG. 11B). The flexure 216, which is attached to the base 102, isconfigured to bend so as to engage one of the switches 212, 214 when thepost 210 moves between the first and second positions. For example, asshown in FIG. 11B, when a force F is applied to the right side of thebody 104, the flexure 216 bends outward to the right, thus engaging andsubsequently moving an actuator element of the second switch 214. In asimilar manner (although not shown), when a force is applied to the leftside of the body 104, the flexure 216 bends outward to the left, thusengaging and subsequently moving an actuator element of the first switch212. This particular arrangement may be widely varied. For example, itmay be used as shown to produce a mouse with two button functionality,or it may be used in combination to produce more than two buttonfunctionalities.

Moreover, it should be noted that sensors may be used in place ofswitches. Unlike switches, which provide binary data (e.g., activate anddeactivate), sensors generally provide continuous data (e.g., theymeasure a continuous analog value). As such, they may produce uniformforce and travel profiles with respect to the clicking actions.Furthermore, they may be used to calibrate out manufacturingdiscrepancies.

FIG. 12 is side view, in cross section, of the mouse 100 (taken alongsectional line 10-10′ in FIG. 8), in accordance with an alternateembodiment of the invention. In this embodiment, a switch 220 and a tiltsensor 222 are used to produce signals associated with when the buttonzones A, B and C are actuated. The switch 220 is configured to activateor deactivate the clicking actions, and the tilt sensor 222 isconfigured to measure the degree of tilt of the body 104 so as todetermine a right, middle or left clicking action. As shown, the tiltsensor 222 includes a light emitter 224 and a plurality of lightdetectors 226. The light emitter 224 is configured to shine a light beam228 incident on a reflective surface 230 of the body 104. The lightdetectors 226 are configured to measure the light intensity of the light232 that is reflected off of the reflective surface 230. The tilt sensor222 may be widely varied. In the illustrated embodiment, the tilt sensor222 includes a pair of light detectors 226A and 226B that are positionedon opposite sides of the light emitter 224. The tilt angle may bedetermined by the intensity of light that is reflected on each of thedetectors 224. In simple terms, if the light intensity on detector 226Ais greater than on detector 226B, then the body 104 is tilted to theright, and if the light intensity on detector 226 A is less than ondetector 226B, then the body 104 is tilted to the left. In most cases,the detectors produce signals that report voltage based on the amount oftilt.

It should be noted that a pair of detectors is not a limitation and thatone or more detectors may be used. In one implementation, two pairs ofdetectors, which are positioned orthogonal to each other are used todetermine tilt in multiple directions.

FIG. 13A is a side view, in cross section, of the mouse 100 (taken alongsectional line 10-10′ in FIG. 8), in accordance with an alternateembodiment of the invention. In this embodiment, a switch 234 and a tiltsensor 236 are used to produce signals associated with when the buttonzones A, B and C are actuated. The switch 234 is configured to activateor deactivate the clicking actions, and the tilt sensor 236 isconfigured to measure the degree of tilt of the body 104 so as todetermine a right, middle or left clicking action. As shown, the tiltsensor 236 includes a light emitter 238, a collimator 240 and a positionsensitive detector array 242. The light emitter 238 (e.g., I-R emitterdiode) is configured to shine a light beam 244 incident on the positionsensitive detector array 242. The collimator 240 is configured to helpfocus the light 244 on the detector array 242. The position sensitivedetector array 242 is configured to measure the position of the light244 incident on the detector array 242. In simple terms, if the light244 is detected on the left detectors of the detector array 242, thenthe body 104 is tilted to the right (as shown in FIG. 13C), and if thelight 244 is detected on the right detectors of the detector array 242,then the body 104 is tilted to the left (as shown by FIG. 13B).

FIG. 14 is a broken away perspective diagram of a unibody mouse 250, inaccordance with one embodiment of the present invention. By way ofexample, the unibody mouse may correspond to the mouse shown in FIG. 8.The mouse 250 includes a body 252 and a base 254. The base 254 and body252 are configured to enclose a plurality of electrical components 256.The electrical components 256, which are supported by the base 254,include at least a printed circuit board 258 having a plurality ofswitches 260 attached thereto. The base 254 and body 252 are alsoconfigured to provide a clicking action. Broadly, the clicking action isprovided by a pivot flexure joint that allows the body to move inmultiple directions (e.g. multiple DOF). For example, the body may becapable of tilting to the left-front, right-front or middle-front of themouse.

More specifically, the body 252 is pivotally coupled to the base 254 viaa pair of pivot pins 264, which extend from the body 252 and which arelocated towards the rear of the body 252. The pivot pins 264 areconfigured to be coupled to a pair of flexure supports 266 which areflexibly attached to the base 254, and which are located towards therear of the base 254. The pivot pins 264 are adapted to be inserted intoopenings 268 in the flexure support 266 thereby allowing the body 252 topivot relative to the base 254. The flexure support 266 is formed from abendable or deformable material that allows the body 252 to move inmultiple directions (e.g., side to side). For example, the flexuresupport may be formed from plastic, metal and the like. The flexuresupport may be mounted on the base 254 or it may be part of the base254. In the illustrated embodiment, the flexure support 266 and base 254are integrated into one unit (e.g., the flexure support is formed intothe base).

As should be appreciated, the pivot allows the body 252 to swing betweenan unclicked position, placing the body 252 in an upright position, anda front clicked position, tilting the body 252 towards the front of themouse 250. In addition, the flexure allows the body to swing between anunclicked position, placing the body 252 in an upright position, and aleft or right clicked position, tilting the body 252 to the right andleft sides of the mouse 250. In one embodiment, a spring mechanism isused to bias the body 252 in a direction away from the base 254, i.e.,in the un-clicked positions. By way of example, the spring mechanism maybe part of the switches 260, i.e., the actuators may be biased in theupright position, or it may be a separate spring pad connected to thebase 254. In the illustrated embodiment, the spring mechanism is part ofthe middle switch 260C, and thus the actuator 261 of the switch 260C isconfigured to push against an inner surface of the body 254 so as tobias the body in the unclicked position.

In the right clicked position (e.g., when a downward force is applied tothe right front side of the body 252), the body 252 is configured toengage the right switch 260A. That is, during the clicking action, abottom portion of the body is pushed against the actuator 263A of thesensor 260A thereby activating the switch 260A. In the left clickedposition (e.g., when a downward force is applied to the left front sideof the body 252), the body 252 is configured to engage the left sensor260B. That is, during the clicking action, a bottom portion of the bodyis pushed against the actuator 263B of the switch 260B therebyactivating the sensor 263B. In the middle clicked position (e.g., when adownward force is applied to the middle front side of the body 252), thebody 252 is configured to engage the switch 260C. That is, during theclicking action, a bottom portion of the body is pushed against theactuator 261 of the switch 260C thereby activating the switch 260C.Although FIG. 14 is directed towards switches, it should be noted thatsensors may also be used.

When the switches are activated, one or more signals are provided to ahost device such as a computer. In one implementation, the signals arefirst processed by a processor chip 270, which is positioned on the PCB258. The processor chip 270 is typically configured to turn the signalsinto data, which can be used by a computer. The data signals may be sentthrough a cable 272 that is connected to the processor chip 270. One endof the cable 272 typically includes a connector 278 for temporarilycoupling the mouse 250 to the computer. By way of example, the connector278 may be a PS/2 connector, a serial connector, a USB connector and thelike.

Although the switches are configured to report three states: rightclick, left click, and middle click, the mouse itself may be configuredto provide one or more button functions. For example, the mouse may beconfigured to provide a single button function, two button functions,three button functions and the like. In the case of single buttonfunctionality, the three states may all correspond to the same buttonfunction. That is, no matter which click is used: right click, leftclick and middle click, the mouse implements a single button function.In the case of dual button functionality, a portion of the three statesmay correspond to the same button function and a portion may correspondto a different button function. For example, a right click and a middleclick may correspond to a first button function, and the left click maycorrespond to a second button function. In addition, a left click and amiddle click may correspond to a first button function, and the rightclick may correspond to a second button function. Moreover, a rightclick and a left click may correspond to a first button function, andthe middle click may correspond to a second button function. In the caseof three button functionality, the three states may correspond todifferent button functions. For example, a right click may correspond toa first button function, a middle click may correspond to a secondbutton function and a left click may correspond to a third buttonfunction.

In one embodiment, the signal interpretation is implemented at themouse. In another embodiment, the signal interpretation is implementedby the host device to which the mouse is connected. In this embodiment,the signal interpretation may be implemented via software, as forexample, the operating system (OS) of the host device using the mouse.For example, with regards to a two button mouse, the OS may decidewhether the middle click should be associated with a left or rightclick.

The manner in which the host device (computer) interprets the signalsmay be widely varied. In one embodiment, the host device is configuredto interpret the signals so as to produce a single button mouse. Forexample, the host device may be configured to provide a single buttonfunction when any of the three states are activated (together orseparately). In another embodiment, the host device is configured tointerpret the signals so as to produce a dual button mouse. For example,the host device may be configured to provide two button functions whenspecific states are activated (together or separately). In yet anotherembodiment, the host device is configured to interpret the signals so asto produce a three button mouse. For example, the host device may beconfigured to provide three button functions when specific states areactivated (separately).

In one implementation, the signal interpretation is programmable so asto allow a user to control the type and number of button functionsimplemented by the mouse. For example, if a user wants a two buttonmouse, the middle clicking actions can be reported as either right orleft clicks. This allows the mouse clicking to be slightly customized bythe user so as to better match the desires of the user. For example, aright handed user may want to configure the mouse differently than aleft handed user. In addition, once a user increases their skills, theymay want to add more functionality to the mouse. In one embodiment, acontrol panel may be used to allow a user to program the functionalityof the mouse. For example, the control panel may include enable/disableselections, or specific configurations such as a two button mouse withright and left click selections or front and back click selections.

FIG. 15 is a flow diagram of mouse processing 300, in accordance withone embodiment of the invention. The mouse processing 300 is generallyperformed by a computer system (or computer) to provide the computersystem with one or more button functionalities. In one embodiment, thecomputer system corresponds to a general purpose computer such as an IBMcompatible computer or Apple computers.

The mouse processing 300 generally begins at block 302 where inputs froma mouse are monitored. Here, one or more states associated with themouse can be monitored. By way of example, the states being monitoredcan include clicking actions such as right click, left click and middleclick. After block 302, the process proceeds to block 304 where statusinformation associated with the states are obtained from the monitoring.By way of example, the status information may correspond to which of thestates are activated (e.g., on or off).

After block 304, the process proceeds to block 306 where buttonfunctions of the mouse are determined. The button functionalities aregenerally based on the status information and predeterminedconfiguration information. In one embodiment, the predeterminedconfiguration information identifies a type and nature of buttonfunction that is to be provided for a specific status information. Byway of example, an on screen action such as selecting an item on thescreen may be identified when a left click status is activated, and aright and middle click status is not activated. In one embodiment, thepredetermined configuration information is stored in memory. Thus, thecomputer consults the information held in memory in order to determinethe on-screen action for a specific clicking action. The predeterminedconfiguration information stored in the memory may be accessed by a userthrough a mouse control menu, which may be viewed on a display screen aspart of a GUI interface. The mouse control menu may include controlsettings pertaining to one or more on screen actions. In fact, the mousecontrol menu may serve as a control panel for reviewing and/orcustomizing the mouse control settings, i.e., the user may quickly andconveniently review the mouse control settings and make changes thereto.Once the user saves the changes, the modified mouse control settingswill be employed (e.g., as predetermined configuration information) tohandle future events transmitted and/or received through the computer.

After the button functions have been determined, the process proceeds toblock 310 where appropriate button functions are used to perform the onscreen action. For example, the on screen actions may select an item onthe screen, open a file or document, execute instructions, start aprogram, view a list of commands (or system properties), or the like.Thereafter, the process can proceed to back to block 302 where mouseinputs are monitored.

While this invention has been described in terms of several preferredembodiments, there are alterations, permutations, and equivalents, whichfall within the scope of this invention. For example, the mouse mayinclude an adjustable tensioner to stiffen the ease of the clickingaction, i.e., the tension may be lowered to accommodate smaller andlighter hands and increased to accommodate larger and heavier hands. Itshould also be noted that there are many alternative ways ofimplementing the methods and apparatuses of the present invention. It istherefore intended that the following appended claims be interpreted asincluding all such alterations, permutations, and equivalents as fallwithin the true spirit and scope of the present invention.

1. A method of sending signals corresponding to multiple buttonfunctionalities from a unibody mouse to an electronic system having asingle movable housing component that cooperates with and is movablycoupled with a base housing component that supports the unibody mouse ona surface, comprising: associating the multiple button functionalitieswith specific portions of the single movable housing component;activating each of the multiple button functionalities by moving thesingle movable housing component to different positions relative to thebase housing component wherein the single movable housing component hasat least two degrees of freedom relative to the base housing component;generating a clicking action by moving the movable housing componentrelative to the base housing component along at least one of the atleast two degrees of freedom; and sending a signal to the electronicsystem based upon the clicking action.
 2. A method as recited in claim1, wherein the clicking action implements a function selected from agroup comprising: a single click function, a double click function,and/or a dragging and dropping function.
 3. A method as recited in claim1, wherein the electronic system includes a display screen suitable fordisplaying images.
 4. A method as recited in claim 3 wherein each of themultiple button functionalities corresponds to an action on a displayscreen.
 5. A method as recited in claim 4, wherein the single clickfunction causes the electronic system to select a particular image onthe display, and wherein the double click function causes the electronicsystem to open a document and/or launch a program, and wherein thedragging and dropping function generally causes the electronic system tomove an item on the screen in accordance with movement of the unibodymouse in relation to the surface.
 6. A method as recited in claim 1,wherein more than two degrees of freedom are used to implement multipleclicking actions.
 7. A method as recited in claim 6 wherein each of saidclicking actions has a switch associated therewith that is capable ofdifferentiating when each of said clicking actions is actuated.
 8. Amethod as recited in claim 7 wherein each of said switches is enclosedby said housing.
 9. A method as recited in claim 1 wherein said singlemovable housing component is coupled to the base housing component via acombination of joints selected from pivot joints, slider joints, balland socket joints, or flexure joints, and wherein each pivot jointrepresents a different pivot axis.
 10. A method as recited in claim 1wherein said single movable housing component pivots relative to saidbase housing component about a first axis and about a second axis.
 11. Amethod as recited in claim 10 wherein said first axis is orthogonal tosaid second axis.
 12. A method as recited in claim 1, wherein theelectronic system is a computer.
 13. A method of configuring amulti-function mouse having a single movable housing component beingmovably coupled to an associated base housing component that supportsthe multi-function mouse on a surface, the method comprising: assigninga number of distinct button zones to the single movable housingcomponent; generating a signal from an assigned button zone by movingthe single movable housing component relative to the base housingcomponent along at least one of at least two degrees of freedomavailable to the single movable housing component relative to the basehousing component, thereby actuating an associated movement indicatorconfigured to sense a movement of the associated assigned button zones;interpreting the signal received from the associated assigned buttonzone as a corresponding button function; and performing the buttonfunction corresponding to the signal received from the mouse.
 14. Amethod as recited in claim 13, wherein when the multi-function mouse isuser programmable, then the interpreting the signal received from eachassigned button zone is updated to correspond to a user provided buttonfunction.
 15. A method as recited in claim 13, further comprising:connecting the multi-function mouse to a computer having a displayscreen arranged to display an image and a processor unit operativelycoupled to the display screen, wherein the processor unit receives andinterprets the signal received from the multi-function mouse.
 16. Amethod as recited in claim 15, wherein the button function is selectedfrom a group comprising: a single click function, a double clickfunction, and/or a dragging and dropping function.
 17. A method asrecited in claim 16, wherein the single click function causes theprocessor to select a particular image on the display, and wherein thedouble click function causes the processor to open a document and/orlaunch a program, and wherein the dragging and dropping functiongenerally causes the processor to move an item on the screen inaccordance with movement of the multi-function mouse in relation to thesurface.
 18. A method as recited in claim 13 wherein said single movablehousing component is coupled to the base housing component via acombination of joints selected from pivot joints, slider joints, balland socket joints, or flexure joints, and wherein each pivot jointrepresents a different pivot axis.
 19. A method as recited in claim 13wherein said single movable housing component pivots relative to saidbase housing component about a first axis and about a second axis.
 20. Amethod as recited in claim 19 wherein said first axis is orthogonal tosaid second axis.
 21. Computer program product executable by a processorfor configuring a multi-function mouse having a single movable housingcomponent being movably coupled to an associated base housing componentthat supports the multi-function mouse on a surface, comprising:computer code for assigning a number of distinct button zones to thesingle movable housing component; computer code for generating a signalfrom an assigned button zone by moving the single movable housingcomponent relative to the base housing component along at least one ofat least two degrees of freedom available to the single movable housingcomponent relative to the base housing component, thereby actuating anassociated movement indicator configured to sense a movement of theassociated assigned button zones; computer code for interpreting thesignal received from the assigned button zone as a corresponding buttonfunction; computer code for performing the button function correspondingto the signal received from the mouse; and computer readable medium forstoring the computer code.
 22. Computer program product as recited inclaim 21, wherein when the multi-function mouse is user programmable,then the interpreting the signal received from each assigned button zoneis updated to correspond to a user provided button function. 23.Computer program product as recited in claim 21, further comprising:computer code for connecting the multi-function mouse to a computerhaving a display screen arranged to display an image and a processorunit operatively coupled to the display screen, wherein the processorunit receives and interprets the signal received from the multi-functionmouse.
 24. Computer program product as recited in claim 23, wherein thebutton function is selected from a group comprising: a single clickfunction, a double click function, and/or a dragging and droppingfunction.
 25. Computer program product executable by a processor in anelectronic system, comprising computer code for assigning a number ofdistinct button zones to a single movable housing component of a userinput device communicatively coupled with the electronic system, thesingle movable housing component being movably coupled to an associatedbase housing component that supports the user input device on a surface,the single movable housing component being capable of movement along atleast two degrees of freedom relative to the base housing component;computer code for associating a button function with each assignedbutton zone; computer code for interpreting a signal received from theuser input device, the signal being produced in the user input deviceand transmitted to the electronic system as a result of actuating abutton zone, the button zone being actuated as a result of moving thesingle movable housing component relative to the base housing componentto actuate an associated movement indicator configured to sense amovement of the associated button zone, wherein interpreting the signalinvolves at least determining which button zone was actuated; computercode for implementing a specific button function corresponding to theassociated actuated button zone, the button function corresponding to anaction on a display; and computer readable medium for storing thecomputer code.
 26. Computer program product as recited in claim 25,wherein the button function is one selected from a group comprising: asingle click function, a double click function, and/or a dragging anddropping function.
 27. Computer program product as recited in claim 26,wherein the single click function causes the electronic system to selecta particular image on the display, and wherein the double click functioncauses the electronic system to open a document and/or launch a program,and wherein the dragging and dropping function generally causes theelectronic system to move an item on the screen in accordance withmovement of the user input device in relation to the surface.
 28. Asystem, comprising: a unibody user input device having multiple assignedbutton zones in a single movable housing component of the user inputdevice, wherein each button zone has an associated button functionalityand all of said multiple button functionalities are incorporated intothe single movable housing component, the single movable housingcomponent being movably coupled to a base housing component thatsupports the mouse along a surface, wherein the movable housingcomponent is capable of movement along at least two degrees of freedomrelative to the base housing component, wherein actuation of a singlebutton zone is achieved by moving the movable housing component relativeto the base housing component to actuate an associated movementindicator configured to sense a movement of the associated button zone;a display; and a processor communicatively coupled with the mouse, theprocessor configured to interpret a signal received from the user inputdevice, the signal being produced in the user input device as a resultof the actuation of a button zone, wherein the interpretation of thesignal involves at least the determination of which button zone wasactuated, the processor being further configured to implement a specificbutton function corresponding to the associated actuated button zone,the button function corresponding to an action on the display.